Solid-state drives (SSDs) have been used for many years as USB “plug and play” peripheral devices for personal computers. These solid-state drives use electrically programmable nonvolatile semiconductor random access memory, commonly known as flash memory, for data storage. Initially the solid-state drives were used primarily for temporary backup and transfer of files between computers in lieu of floppy disks. Now increasing capacity and decreasing cost of the flash memory have made the solid-state drives suitable for replacement of magnetic disk drives in personal computers.
More recently solid-state drives have been introduced commercially into tiered storage arrays. For example, on Jan. 14, 2008, EMC Corporation announced that it was offering flash-based SSDs in a Symmetrix DMX-4 (Trademark) storage array. The flash-based SSDs provide ultra fast read/write performance, high reliability, and data integrity. In addition, the operating system software of the Symmetrix DMX-4 (Trademark) storage array includes the ability to easily provision, manage, replicate, and move data between flash drives and traditional Fibre Channel and SATA disk drives in the same array. The tiered storage aligns data availability, service level requirements, and software functionality with capacity and cost considerations for improved read/write performance, resiliency, and energy efficiency.
The file mover in the Symmetric DMX-4 (Trademark) storage array uses policy-based migration software originally developed for automated file movement in a tiered storage environment including a primary storage tier and a secondary storage tier. The policy-based migration software classifies files based on policy, and migrates the files in a transparent and non-disruptive fashion. Prior to incorporation of the SSDs into storage arrays, the policy migration software was used for automatic file movement between a primary storage tier comprised of high-speed disk drives, and a secondary storage tier comprised of low-speed high-capacity ATA disk drives, or optical storage or tape. The primary storage tier was used as a production data repository, and the secondary storage tier was used as an archival storage repository. The actual migration policy was initially configured by the system administrator, and could be modified by particular applications.
According to a typical migration policy, a file was originally created and accessed in the primary storage tier. If the duration of time from the last access time of a file in the primary storage tier to the present time became more than an expiration time limit, then the file was migrated from the primary storage tier to the secondary storage tier, and then the file in the primary storage tier was replaced with a symbolic link in the primary storage tier. The symbolic link in the primary storage tier pointed to the file in the secondary storage tier. If an application would write to a file in the secondary storage tier, then the file would be moved back to the primary storage tier. If an application would frequently read from a file in the secondary storage tier, then the file would be moved back to the primary storage tier.